package com.irdstudio.efp.rule.service.facade;

import java.util.List;

import com.irdstudio.efp.rule.service.vo.TaxBasicInfoVO;

/**
 * Service Interface：自然人基本信息表服务 
 * @author ligm
 * @date 2019-04-29 
 */
public interface TaxBasicInfoService {
    
	/**
	 * 新增数据 
     * @param inTaxBasicInfoVo
	 * @return 
	 */
	public int insertTaxBasicInfo(TaxBasicInfoVO inTaxBasicInfoVo);

    /**
	 * 根据主键删除信息 
     * @param inTaxBasicInfoVo
	 * @return 
	 */
	public int deleteByPk(TaxBasicInfoVO taxBasicInfoVo);

    /**
	 * 根据主键更新信息 
     * @param inTaxBasicInfoVo
	 * @return 
	 */  
	public int updateByPk(TaxBasicInfoVO taxBasicInfoVo);

    /**
	 * 根据主键查询详情 
     * @param taxBasicInfo
	 * @return 
	 */
	public TaxBasicInfoVO queryByPk(TaxBasicInfoVO taxBasicInfoVo);

    /**
	* 一级数据权限
     * @param taxBasicInfo
	 * @return 
	 */	
	public List<TaxBasicInfoVO> queryAllByLevelOne(TaxBasicInfoVO taxBasicInfoVo);
	
    /**
	 * 二级数据权限 
     * @param taxBasicInfo
	 * @return 
	 * @version 0.1
	 */
	public List<TaxBasicInfoVO> queryAllByLevelTwo(TaxBasicInfoVO taxBasicInfoVo);
	
    /**
	 * 三级数据权限 
     * @param taxBasicInfo
	 * @return 
	 */
	public List<TaxBasicInfoVO> queryAllByLevelThree(TaxBasicInfoVO taxBasicInfoVo);
	
    /**
	 * 四级数据权限 
     * @param taxBasicInfo
	 * @return 
	 */
    public List<TaxBasicInfoVO> queryAllByLevelFour(TaxBasicInfoVO taxBasicInfoVo);

    /**
	 * 五级数据权限
     * @param taxBasicInfo
	 * @return 
	 */
    public List<TaxBasicInfoVO> queryAllByLevelFive(TaxBasicInfoVO taxBasicInfoVo);
    
    /**
     * 通过身份证号和身份证类型以及授信流水号查询
     * @author zhoucs1
     * @since  2019年5月7日 上午10:22:52
     * @param taxBasicInfoVo
     * @return
     */
    public TaxBasicInfoVO queryByCerTpAndCertCodeAndCrdtFlowNo(TaxBasicInfoVO taxBasicInfoVo);
}
